The present invention relates generally to user interfaces. More specifically, the invention relates to a computer interface providing motion detection and tracking to control navigation and display of multi-dimensional object databases using a reference navigation target.
In the last few decades, enormous progress has occurred in developing and perfecting interactions between humans and computer systems. Improvements in user interfaces along with improvements in data capacity, display flexibility, and communication capabilities have lead to the widespread use of applications such as Internet browsers, e-mail, map programs, imaging programs and video games that can be generally described as providing content-rich information to the user. While a discussion of the various stages of user interface evolution is unnecessary, the following highlights of that evolution are illustrative, providing a basis for understanding the utility of the invention claimed herein.
Traditional computer human interfaces 10 exist in a variety of sizes and forms including desktop computers, remote terminals, and portable devices such as laptop computers, notebook computers, hand held computers, and wearable computers.
In the beginning of the personal computer era, the desktop computer, which is still in use today, dominated the market. FIG. 1 portrays a traditional desktop computer human interface 10. The traditional desktop computer 10 typically includes a display device 12, a keyboard 14, and a pointing device 16. The display device 12 is normally physically connected to the keyboard 14 and pointing device 16 via a computer. The pointing device 16 and buttons 18 may be physically integrated into the keyboard 14.
In the traditional desktop computer human interface 10, the keyboard 14 is used to enter data into the computer system. In addition, the user can control the computer system using the pointing device 16 by making selections on the display device 12. For example, using the pointing device the user can scroll the viewing area by selecting the vertical 38 or horizontal 36 scroll bar.
As semiconductor manufacturing technology developed, portable personal computers such as notebook and hand held computers became increasingly available. Notebook and hand held computers are often made of two mechanically linked components, one essentially containing the display device 12 and the other the keyboard 14 and pointing device 16. Hinges often link these two mechanical components with a flexible ribbon cabling connecting the components and embedded in the hinging mechanism. The two components can be closed like a book, often latching to minimize inadvertent opening.
The notebook computer greatly increased the portability of personal computers. However, in the 1990's, a new computer interface paradigm emerged which enabled even greater portability and freedom and gave rise to the Personal Digital Assistant 20 (PDA hereafter). One of the first commercially successful PDAs was the Palm product line (PalmPilot.TM.) now manufactured by 3Com. These machines are quite small, lightweight and relatively inexpensive, often fitting in a shirt pocket, weighing a few ounces and costing less than $400 when introduced. These machines possess very little memory (often less than 2 megabytes), a small display 28 (roughly 6 cm by 6 cm) and no physical keyboard. The pen-like pointing device 26, often stored next to or on the PDA 20, is applied to the display area 28 to enable its user to make choices and interact with the PDA device 20. External communication is often established via a serial port (not shown) in the PDA connecting to the cradle 22 connected by wire line 24 to a traditional computer 10. As will be appreciated, PDAs such as the PalmPilot.TM. have demonstrated the commercial reliability of this style of computer interface.
FIG. 2 displays a prior art Personal Digital Assistant 20 in typical operation, in this case strapped upon the wrist of a user. At least one company, Orang-otang Computers, Inc. sells a family of wrist mountable cases for a variety of different PDAs. The pen pointer 26 is held in one hand while the PDA 20 is held on the wrist of the other hand. The display area 28 is often quite small compared to traditional computer displays 12. In the case of the Palm product line, the display area 28 contains an array of 160 pixels by 160 pixels in a 6 cm by 6 cm viewing area. Often, part of the display area is further allocated to menus and the like, further limiting the viewing area for an object such as an e-mail message page. This limitation in viewing area is partially addressed by making the menu bar 34 (FIG. 1) found on most traditional computer human interface displays 12 invisible on a PDA display 28 except when a menu button 29 is pressed.
Object database programs, such as map viewers, present a fairly consistent set of functions for viewing two-dimensional sheets. Where the object being viewed is larger than the display area of the display, controls to horizontally and vertically scroll the display area across the object are provided. Such viewing functions often possess visible controls accessed via a pointing device. As shown in FIG. 1, horizontal scrolling is often controlled by a slider bar 36 horizontally aligned with a viewing region 40. Vertical scrolling is often controlled by a vertical slider bar 38 vertically aligned with the viewing region 40. Additionally such database interfaces often possess functionality to scroll in directions other than the vertical and horizontal orthogonal directions. This function is usually controlled by pointing to an icon, such as hand icon 42, which is then moved relative to the viewing area 40 while holding down the button 18.
Furthermore, object viewers often incorporate the ability to zoom in or out to control the resolution of detail and the amount of information visible upon the display device. Zoom out and zoom in controls 30, 32 are often either immediately visible or available from a pull down menu as items in one or more menu bars 34.
Finally, object viewers often include the ability to traverse a hierarchical organization of collections of objects such as folders of e-mail messages, log files of FAXes, project directories of schematics or floor plans, Internet web page links and objects representing various levels or sub-systems within a multi-tiered database.
In summary, traditional computer human interfaces 10, 20 have been employed in a variety of contexts to provide interactivity with multi-dimensional and/or multi-tiered object programs and systems. These interfaces superficially appear capable of providing a reasonable interface. However, size limitations and associated barriers, drastically limit their functionality and interactivity. When the desired size (e.g. width and/or height) of the object's display format is larger than the size of the display screen itself, a method must be used to control which portion of the object is to be displayed on the screen at any given time. Various methods, in addition to those described above, have been devised to activate pan and scroll functions such as pushing an "arrow" key to shift the display contents in predefined increments in the direction indicated by the arrow key. Alternatively, a pen pointer or stylus can be used to activate pan and scroll functions to shift the display contents. In all of these examples, the physical display device remains relatively stationary and the larger object is viewed piece-wise and sequentially in small segments corresponding to the limitations of the physical size of the display screen.
In actual practice, these typical methods have many inherent problems. If the display screen is small relative to the object to be viewed, many individual steps are necessary for the entire object to be viewed as a sequence of displayed segments. This process may require many sequential command inputs using arrow keys or pen taps, thus generally requiring the use of both hands in the case of hand held computers. Furthermore, the context relationship between the current segment displayed on the screen and the overall content of the whole object can easily become confusing.
What is needed is a system that provides a simple and convenient method to control the display contents that also preserves the user's understanding of the relationship between the current segment on the display and the overall content of the object. Such a method is of particular value for personal information appliances such as hand held computers and communications devices with small display screens. Such appliances must satisfy the conflicting requirements of being small and convenient on the one hand and having the performance and utility of modern laptop or desktop computers on the other. Preferably, the method allows for single-handed control of the display contents.